/**
 * Created by Administrator on 2017/6/13.
 */

/**
 *  自定义指令中的  scope为false时，表示自定义指令中的scope为同一个
 *                          scope为true时，表示自定义指令中的scope为一个新的继承与controller中的scope
 *                          scope为对象时，会创建一个独立的作用域
 */
angular
    .module('myApp',[],['$compileProvider',function ($compileProvider) {
        $compileProvider.directive('customTags',function () {
            return {
                restrict : 'ECMA',
                replace : true,
                template : '<div class="h2">德玛西亚</div>',
                controller : function ($scope) {
                    console.log($scope);
                    console.log($scope.a())
                    console.log($scope.b)
                    console.log($scope.c)
                },
                // scope : true
                // scope : false
                scope : {
                    /**
                     *  &作用域把父作用域的属性包装成一个函数，从而以函数的方式读写父作用域的属性
                     */
                    a : '&customName',
                    //  = 作用域的属性与父作用域的属性进行双向绑定，任何一方修改均影响到双方
                    b : '=customAge',
                    //  @ 只能读取父作用域里的值单项绑定           属性中写表达式{{}}
                    c : '@customHeight'
                }
            }
        })
    }])
    .controller('MyController',function ($scope) {
        $scope.name = '朱明宇';
        $scope.age = '24';
        // $scope.height = '170cm';

        $scope.height = {
            height : '170cm'
        };
        console.log($scope);
    });